package com.example.dangdangbackend.mapper;

import com.example.dangdangbackend.DTO.*;
import com.example.dangdangbackend.VO.BookTableVO;
import com.example.dangdangbackend.VO.SelectBooksVO;
import com.example.dangdangbackend.entity.Book;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

@Mapper
public interface BookMapper {

    /**
     * 插入书目
     * @param book
     */
    void insertBook(Book book);

    /**
     * 搜索数目
     */
    List<BookTableVO> searchBooks(BookSearchDTO bookSearchDTO);


    void updateBookById(UpdateBookDTO updateBookDTO);

    BookDTO selectById(int id);

    void deleteBooks(List<Integer> list);

    List<BookTableVO> searchBooksByCategory(CategorySearchDTO categorySearchDTO);

    void addBookSales(List<AddBookSaleDTO>addBookSaleDTOS);

    void alertStatus(int bookId);

    List<SelectBooksVO> getRecommendBooks();

    List<SelectBooksVO> selectSalesMost();

    List<SelectBooksVO>selectRecentBooks();

    List<SelectBooksVO> selectNewBookAndSalesMost();
}
